package com.zycfc.zsf.boot.core.web.annotation;

import java.lang.annotation.*;
import org.springframework.core.annotation.*;
import org.springframework.web.bind.annotation.*;

@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
@RequestMapping
public @interface ZsfRequestMapping {
    String name() default "";
    
    @AliasFor("path")
    String[] value() default {};
    
    @AliasFor("value")
    String[] path() default {};
    
    RequestMethod[] method() default { RequestMethod.POST };
    
    String[] params() default {};
    
    String[] headers() default {};
    
    String[] consumes() default {};
    
    String[] produces() default {};
    
    String apiCd() default "";
    
    String apiName();
    
    String version() default "0.0.1";
    
    boolean needPermissions() default true;
    
    boolean isLogin() default false;
    
    boolean needLimit() default false;
}
